package gervosou;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.DropMode;
import java.awt.Color;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.GregorianCalendar;

public class VueNouvClient extends Vue {

	/**
	 * 
	 */
	//private static final long serialVersionUID = 5069349224425178639L;
	private JPanel contentPane;
	private JTextField textFieldNom;
	private JTextField textFieldPrenom;
	private JTextField textFieldAdresse;
	
	// pour que les boutons soient des attributs, il faut faire "convert local to field"
	private JButton btnEnregistrer;
	private JButton btnAnnuler;

	// a ajouter car la vue est observatrice d'un client
		private ClientPhysique _client ;
		private JLabel lblDateNaissance;
		private JTextField textFieldDateNaissance;
	
	/**
	 * Create the frame.
	 */
	public VueNouvClient(Controleur controleur) {
		super (controleur);
		setTitle("Enregistrement d'un nouveau client");
		setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		setBounds(100, 100, 450, 300);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JLabel lblNom = new JLabel("Nom");
		lblNom.setBounds(7, 38, 61, 16);
		contentPane.add(lblNom);
		
		textFieldNom = new JTextField();
		textFieldNom.setBounds(80, 32, 222, 28);
		textFieldNom.setBackground(new Color(255, 255, 255));
		contentPane.add(textFieldNom);
		textFieldNom.setColumns(10);
		
		btnEnregistrer = new JButton("Enregistrer");
		btnEnregistrer.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				String nom = textFieldNom.getText();
				String prenom = textFieldPrenom.getText();
				String adresse = textFieldAdresse.getText();
				String dn = textFieldDateNaissance.getText();
				getControleur().nouvClientPhysique(nom, prenom, adresse, dn);}
		});
		btnEnregistrer.setBounds(328, 21, 117, 52);
		contentPane.add(btnEnregistrer);
		
		btnAnnuler = new JButton("Annuler");
		btnAnnuler.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				getControleur().fermerVue(VueNouvClient.this);
			}
		});
		btnAnnuler.setBounds(328, 88, 117, 29);
		contentPane.add(btnAnnuler);
		
		JLabel lblPrnom = new JLabel("Pr\u00E9nom");
		lblPrnom.setBounds(7, 101, 61, 16);
		contentPane.add(lblPrnom);
		
		textFieldPrenom = new JTextField();
		textFieldPrenom.setBounds(80, 89, 222, 28);
		contentPane.add(textFieldPrenom);
		textFieldPrenom.setColumns(10);
		
		JLabel lblAdresse = new JLabel("Adresse");
		lblAdresse.setBounds(7, 156, 61, 16);
		contentPane.add(lblAdresse);
		
		textFieldAdresse = new JTextField();
		textFieldAdresse.setColumns(10);
		textFieldAdresse.setBounds(80, 144, 222, 28);
		contentPane.add(textFieldAdresse);
		
		lblDateNaissance = new JLabel("Date de naissance : (JJ/MM/AAAA)");
		lblDateNaissance.setBounds(7, 205, 214, 16);
		contentPane.add(lblDateNaissance);
		
		textFieldDateNaissance = new JTextField();
		textFieldDateNaissance.setColumns(10);
		textFieldDateNaissance.setBounds(233, 199, 142, 28);
		contentPane.add(textFieldDateNaissance);
	}
	
	public void setEtat (int etat){
		switch (etat) {
		case initiale: {
			btnEnregistrer.setEnabled(true);
			btnAnnuler.setEnabled(true);
			break;
			}
		}
	}
}
